Bankcard Password Protection Method and System

ABSTRACT

A bankcard password protection method includes the steps: a security processor randomly generates a public and private key pair; the security processor sends a public key to an application processor; the application processor acquires a bankcard password, encrypts the bankcard password by means of the public key and sends the encrypted bankcard password to the security processor; and the security processor decrypts the bankcard password by means of a private key. In this way, the bankcard password protection method of the invention improves the security of the bankcard password input process and brings a better experience feeling to customers.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application is a Continuation Application of PCT Application No. PCT/CN2016/092332 filed on Jul. 29, 2016, which claims the benefit of Chinese Patent Application No. 201610080215.8 filed on Feb. 4, 2016. All the above are hereby incorporated by reference.

TECHNICAL FIELD

The invention relates to the technical field of data transmission, in particular to a bankcard password protection method and system.

DESCRIPTION OF RELATED ART

With the continuous development of the Internet and electronic payment techniques, traditional financial POS devices have been greatly changed and closely combined with the Internet day-by-day in the aspects of appearance design, function expansion, interface enrichment, user experiment improvement and the like, and various new techniques have sprung up, such as the new technique of bankcard password input based on a touch screen.

When bankcard passwords are input into the traditional POS devices, a special physical numeric keypad is needed. Along with the requirement for smaller and smaller POS devices, a great bottleneck confronts POS devices in structural design and appearance design due to the large space occupation of the physical keypad, and the traditional POS devices always seem rigid and unfashionable. With the development of the Internet technology and the rise of mobile payment, the technique of realizing bankcard password input on mobile phones has been widely used and is being understood and accepted by customers day by day. Following the popularization of smart POS devices, touch screen-based bankcard password input is becoming a tide and an inevitable technology development trend.

However, as professional commercial payment devices, POS machines are different from personal payment devices such as mobile phones which are generally used by individuals or limited persons. Due to the fact that any customers may swipe cards and input bankcard passwords to the POS machines serving as commercial payment devices, the benefits of cardholders will be threatened once the POS machines are illegally transformed. Thus, the requirement for the security protection level of bankcard password input of the professional commercial POS devices is much higher than that of personal devices such as mobile phones, and the security protection technique for bankcard password input of POS devices based on touch screens is of great importance.

In the prior art, a POS terminal comprises an application processor (short for AP) and a security processor (short for SE). As a universal application processor, the AP does not have a physical intrusion detection and response mechanism or a hardware storage area conforming to the specifications of the financial POS industry to store sensitive data, such as transaction keys, used for transaction verification with the bank background. As a professional security processor, the SE has a physical intrusion detection and response mechanism and is internally provided with a hardware-protected security storage area for storing sensitive data such as keys, and all the sensitive data in the security storage area will be automatically destroyed when the POS machines suffer from various physical attacks such as illegal disassembly, making sure that these information has been automatically lost and cannot be accessed under the condition that the POS machines are internally attacked. PIN (namely bankcard password) information needs to be encrypted in the POS machines first and then is sent to the POS background to complete verification; however, due to the facts that the AP cannot store keys and only the SE can store keys, after acquiring bankcard passwords input by customers, the AP has to transmit the bankcard passwords to the SE, the SE encrypts the bankcard passwords by means of the keys and then transmits the encrypted bankcard passwords back to the AP, and afterwards, the AP transmits the bankcard passwords to the bank background for transaction verification. However, in the transmission process from the AP to the SE, plaintexts of the bankcard passwords are exposed, and the bankcard passwords are prone to being cracked, resulting in potential safety hazards.

TECHNICAL PROBLEMS

The technical issue to be settled by the invention is to disclose a novel practical bankcard password input protection technique, which achieves safe input and internal transmission of bankcard passwords without affecting user experience of customers through a reasonable scheme design and an encryption protection technique of the bankcard cryptography.

SOLUTION TO THE PROBLEMS Technical Solution

The technical scheme adopted by the invention to settle the above technical issue is to provide a bankcard password protection method. The bankcard password protection method comprises the following steps:

A security processor randomly generates a public and private key pair;

The security processor sends a public key to an application processor;

The application processor acquires a bankcard password, encrypts the bankcard password by means of the public key and then transmits the encrypted bankcard password to the security processor;

The security processor decrypts the bankcard password by means of a private key.

To settle the above technical issue, the invention further provides a bankcard password protection system. The bankcard password protection system comprises an application processor and a security processor, wherein:

The security processor is used for randomly generating a public and private key pair and sending a public key to the application processor;

The application processor acquires a bankcard password, encrypts the bankcard password by means of the public key and then transmits the encrypted bankcard password to the security processor;

The security processor decrypts the bankcard password by means of a private key.

BENEFICIAL EFFECTS OF THE INVENTION Beneficial Effects

The invention has the following beneficial effects: different from the prior art, the security processor of the invention randomly generates a public and private key pair and sends a public key to the application processor to encrypt a bankcard password, the encrypted bankcard password is then sent to the security processor to be decrypted by means of a private key, and thus, the plaintext of the bankcard password is prevented from being exposed in the transmission process from the application processor to the security processor. In this way, the invention improves the security of the input and transmission process of the bankcard password and brings a better experience feeling to customers.

BRIEF DESCRIPTION OF DRAWINGS Description of Drawings

FIG. 1 is a flow diagram of the method in the first embodiment of the invention;

FIG. 2 is a physical component diagram of a smart POS device in the specific embodiment of the invention;

FIG. 3 is a diagram of the PIN input and encryption protection process during a transaction in the specific embodiment of the invention;

FIG. 4 is a first disorganized display diagram of a touch-screen numeric keypad in the specific embodiment of the invention;

FIG. 5 is a second disorganized display diagram of the touch-screen numeric keypad in the specific embodiment of the invention;

FIG. 6 is a third disorganized display diagram of the touch-screen numeric keypad in the specific embodiment of the invention.

EMBODIMENTS OF THE INVENTION Detailed Description of the Invention

The key conception of the invention lies in that a public and private key pair is generated in a security processor and a bankcard password input by customers is encrypted in an application processor and then transmitted to the security processor so as to be decrypted, thus preventing the plaintext of the bankcard password from being exposed in the transmission process.

As is shown in FIG. 1, the first embodiment of the invention provides a bankcard password protection method. The bankcard password protection method comprises the following steps:

S1: a security processor randomly generates a public and private key pair;

S2: the security processor sends a public key to an application processor;

S3: the application processor acquires a bankcard password, encrypts the bankcard password by means of the public key and then sends the encrypted bankcard password to the security processor;

S4: the security processor decrypts the bankcard password by means of a private key.

The first embodiment of the invention differs from the prior art in that the security processor randomly generates the public and private key pair and sends the public key to the application processor to encrypt the bankcard password and the encrypted bankcard password is then sent to the security processor to be decrypted by means of the private key, thus improving the security of the input process of the bankcard password and bringing a better experience feeling to customers.

Wherein, the security processor encrypts a bankcard password plaintext obtained through decryption by means of a key to obtain a PIN block in a ciphertext format and then sends the PIN block in the ciphertext format to the application processor; and the application processor sends the PIN block in the ciphertext format as well as transaction data to a background to complete verification.

In addition, the key used to form the PIN block in the ciphertext format through encryption is prestored in the security processor and used for transaction verification with the background. That is, the key is irrelevant to the public and private key pair generated in Step S1.

The application processor displays a random disorganized numeric keypad on a touch screen, and the bankcard password is input through the random disorganized numeric keypad.

Specifically, when PIN is input to the touch screen of the AP, a random disorganized numeric keypad will be displayed on a LCD screen to remind the cardholder to input the PIN. Every time the numeric keypad is displayed on the LCD screen, a drive or service related to PIN input of the touch screen will read a set of random numbers from the system, and then a numeric keypad with disorganized numbers is shown on the LCD screen according to the random numbers, thus making sure that the prompt and input positions of PIN numbers on the LCD screen are random and uncertain every time the PIN numbers are input and accordingly preventing attackers from figuring out the input PIN numbers according to fixed positions.

When the bankcard password is input to the touch screen of the application processor, the system setting enters into a special bankcard password input mode, and all bankcard password input events are only available to a creditable touch screen bankcard password drive so as to be processed.

Specifically, when PIN is input to the touch screen of the AP, the system setting will enter into a special PIN input mode, and in this mode, a special touch screen PIN drive will intercept PIN input events on the hardware level to make sure that all the PIN input events are only available to the creditable touch screen PIN drive to be processed and will not be reported to common application programs, and thus it is ensured that PIN-related information cannot be monitored by illegal application programs. The touch screen PIN input is based on a system-level drive with the legality and integrity protected through the digital signature technique, and the drive cannot be tampered or replaced by common applications.

Specifically, in actual application, the bankcard password protection method of the invention can be applied to a smart POS device to provide protection for safe input and transmission of PIN or to provide security guarantees for PIN input, completely based on a touch screen, of the smart POS device. By implementing the invention, the problems of small available space, difficult appearance and structure design, unattractive overall appearance and inconvenient use caused by the dependence on physical keypads of traditional POS devices can be solved, a better user experience of PIN input of the smart POS device is achieved, and the security of the PIN input process is sufficiently ensured.

The bankcard password protection method is suitable for all POS terminal devices supporting the bankcard payment function and realizing PIN input through a touch screen. These POS terminal devices generally comprise a universal application processor subsystem and a professional security processor subsystem, the touch screen is controlled by the AP subsystem, and PIN is input to an AP and then sent to an SE to be encrypted.

According to the invention, PIN is encrypted when transmitted from the AP to the SE.

In the encryption process, the PIN is encrypted by the AP by means of the public key and decrypted by the SE by means of the private key. Since the public key is open, no great risk will be caused even if the public key is stored on the AP system as long as necessary tamper-proof permission protection is set for the AP. The private key needs to be confidentially protected and thus has to be stored on the SE to be prevented against leakage. The PIN is encrypted when transmitted between the AP and the SE, and thus, the security of the transmission process is ensured, and attackers cannot obtain the PIN content in a plaintext format even if breaking through the circuit between the AP and the SE.

The public and private key pair adopted by each smart POS device is randomly generated in the smart POS device, and thus, the key of each smart POS device is unpredictable and is unique in probability, meeting the requirement for one key for each device.

The public and private key pair can be easily generated in the POS device every time the security area is formatted before the POS terminal device leaves the factory, and does not to be input through a complex method. The key pair can be used all the time as long as the POS device is not disassembled or physically attacked in various forms. If the POS device is illegally disassembled, the POS machine will be returned to the factory to be maintained according to the management requirements, in this case, the security area is re-formatted, and thus a new public and private key pair is generated.

Thus, the novel practical PIN input protection technique provided by the invention can achieve safe input and internal transmission of PIN without affecting the user experiment of customers through a reasonable scheme design and an encryption protection technique of the bankcard cryptography.

As is shown in FIG. 2, in a specific embodiment, the smart POS device is physically composed of an AP subsystem and an SE subsystem. The AP subsystem comprises an application processor, a LCD screen, a touch screen, a code scanner, a power supply, a camera, a communication module, a storage module, a multimedia module and other hardware device modules. The SE subsystem mainly comprises a security processor, a magnetic card, an IC card, a radio frequency card, a printing module (optional), a communication module and the like.

As for each PIN input process, the cardholder inputs PIN through the touch screen, afterwards, the PIN is encrypted by the application processor (AP) by means of a public key and then transmitted to the communication module of the security processor (SE) from the communication module of the AP so as to be decrypted, and the PIN is encrypted by means of a key, then returned to the AP through the communication module of the SE and the communication module of the AP, and finally output to the POS background.

In this specific embodiment, FIG. 3 shows the PIN input and encryption protection steps and flow during one transaction. The description is as follows:

Steps 1-3 are performed in the POS initialization stage, completed in a controlled area of a POS factory, and described as follows:

Step 1: the SE randomly generates a public and private key pair (including a public key and a private key) used as PIN encryption protection keys.

Step 2: the SE sends the public key in the public and private key pair to the AP.

Step 3: the AP stores the public key for encrypted PIN transmission during a subsequent transaction.

Steps 4-9 are to be performed during each normal transaction of the POS device and are described as follows:

Step 4: during each transaction of the POS device, after completing amount input and other operations, the shop assistant hands the POS device to the cardholder for PIN input, and the cardholder inputs the PIN to the POS device.

Step 5: the AP acquires a PIN plaintext first, encrypts the PIN plaintext by means of the public key stored in Step 3 and then sends the encrypted PIN plaintext to the SE.

Step 6: after receiving data sent from the AP, the SE decrypts the data by means of the private key first to acquire the PIN plaintext and then encrypts the PIN plaintext again by means of a PIN encryption key downloaded into the SE (the PIN encryption key is a symmetric key and is downloaded before the POS device is deployed by an acquirer), so that a PIN block in a ciphertext format is obtained.

Step 7: the SE returns the PIN block in the ciphertext format to the AP.

Step 8: the AP integrates the PIN block in the ciphertext format and other transaction data to form a POS transaction message and transmits the POS transaction message to the POS transaction background.

Step 9: the POS transaction background processes relevant data and then conducts comparison (including comparison of PIN and other transaction data); if the comparison succeeds, the transaction succeeds; otherwise, the transaction fails; and the transaction verification result is sent to the POS device.

FIG. 4, FIG. 5 and FIG. 6 show disorganized display diagrams of a numeric keypad for PIN input on the touch screen during one transaction. As is shown in the figures, every time PIN is input, the numbers in the numeric keypad displayed on the touch screen are random and disorganized, the positions of the numbers are not fixed, and thus attackers cannot figure out input PIN numbers according to the positions of the PIN numbers.

Furthermore, the second embodiment of the invention correspondingly provides a bankcard password protection system (not shown in the figures). The bankcard password protection system comprises an application processor and a security processor, wherein:

The security processor is used for randomly generating a public and private key pair and sending a public key to the application processor;

The application processor acquires a bankcard password, encrypts the bankcard password by means of the public key and then transmits the encrypted bankcard password to the security processor;

The security processor decrypts the bankcard password by means of a private key.

The security processor encrypts a bankcard password plaintext obtained through decryption to obtain a PIN block in a ciphertext format and sends the PIN block in the ciphertext format to the application processor;

The application processor sends the PIN block in the ciphertext format as well as transaction data to a background to complete verification.

A key used to form the PIN block in the ciphertext format through encryption is prestored in the security processor and used for transaction verification with the background.

The application processor displays a random disorganized numeric keypad on a touch screen, and the bankcard password is input through the random disorganized numeric keypad.

When the bankcard password is input to the touch screen of the application processor, the system setting enters into a special bankcard password input mode, and all bankcard password input events are only available to a creditable touch screen bankcard password drive so as to be processed. 

1. A bankcard password protection method, characterized by comprising the steps: randomly generating a public and private key pair, by a security processor; sending a public key to an application processor, by the security processor; acquiring a bankcard password, encrypting the bankcard password by means of the public key and transmitting the encrypted bankcard password to the security processor, by the application processor; and decrypting the bankcard password by means of a private key, by the security processor.
 2. The bankcard password protection method according to claim 1, characterized by further comprising the steps: encrypting a bankcard password plaintext obtained through decryption to form a PIN block in a ciphertext format and sending the PIN block in the ciphertext format to the application processor, by the security processor; and sending the PIN block in the ciphertext format as well as transaction data to a background to complete verification, by the application processor.
 3. The bankcard password protection method according to claim 2, wherein a key used to form the PIN block in the ciphertext format through encryption is prestored in the security processor and used for transaction verification with the background.
 4. The bankcard password protection method according to claim 1, characterized by further comprising the step: displaying a random disorganized numeric keypad, used for bankcard password input, on a touch screen of the application processor.
 5. The bankcard password protection method according to claim 2, wherein, when the bankcard password is input to the touch screen of the application processor, a system setting enters into a special bankcard password input mode; all bankcard password input events are only available to a creditable touch screen bankcard password drive so as to be processed.
 6. A bankcard password protection system, characterized by comprising an application processor and a security processor, wherein, the security processor is used for randomly generating a public and private key pair and sending a public key to the application processor; the application processor acquires a bankcard password, encrypts the bankcard password by means of the public key and then transmits the encrypted bankcard password to the security processor; the security processor decrypts the bankcard password by means of a private key.
 7. The bankcard password protection system according to claim 6, wherein, the security processor encrypts a bankcard password plaintext obtained through decryption to obtain a PIN block in a ciphertext format and sends the PIN block in the ciphertext format to the application processor; the application processor sends the PIN block in the ciphertext format as well as transaction data to a background to complete verification.
 8. The bankcard password protection system according to claim 7, wherein a key used to form the PIN block in the ciphertext format through encryption is prestored in the security processor and used for transaction verification with the background.
 9. The bankcard password protection system according to claim 6, wherein, the application processor displays a random disorganized numeric keypad, used for bankcard password input, on a touch screen.
 10. The bankcard password protection system according to claim 7, wherein, when the bankcard password is input to the touch screen of the application processor, a system setting enters into a special bankcard password input mode; all bankcard password input events are only available to a creditable touch screen bankcard password drive so as to be processed. 